package org.cypress.rtpack.service;

import com.baomidou.mybatisplus.extension.service.IService;
import org.cypress.rtpack.entity.RtpackConfig;

import java.util.List;

/**
 * @author getty
 */
public interface IRtpackConfigService extends IService<RtpackConfig> {
    RtpackConfig getByKey(String key);

    List<RtpackConfig> getAll();

    /**
     * 根据key更新配置项
     * @param inst 要更新的配置项
     * @return 更新后的配置项
     */
    RtpackConfig updateByKey(RtpackConfig inst);

    /**
     * 批量更新配置项列表
     * @param instList 要更新的配置项列表（必须包含有效key）
     * @return 更新成功的配置项列表
     * @throws IllegalArgumentException 如果列表为空或包含无效key
     */
    List<RtpackConfig> batchUpdateByKey(List<RtpackConfig> instList);
}
